package com.miplus.ccrm.report.service.cti;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.miplus.ccrm.common.CmdResVo;
import com.miplus.ccrm.common.JSysUser;
import com.miplus.ccrm.report.controller.dto.ivr.InGroupDetailDTO;
import com.miplus.ccrm.report.controller.vo.cti.CallReqVo;
import com.miplus.ccrm.report.controller.vo.cti.CallResVo;
import com.miplus.ccrm.report.controller.vo.cti.DialogueResVo;
import com.miplus.ccrm.report.controller.vo.ivr.InGroupDetailVO;
import com.miplus.ccrm.report.controller.vo.ivr.InGroupStatisticsVO;
import com.miplus.ccrm.report.controller.vo.ivr.VisitGroupStatisticsVO;
import com.miplus.ccrm.report.pojo.TRecorder;
import com.baomidou.mybatisplus.extension.service.IService;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
* @author pc
* @description 针对表【t_recorder】的数据库操作Service
* @createDate 2024-07-29 14:33:48
*/
public interface TRecorderService extends IService<TRecorder> {

    IPage<CallResVo> recordList(JSysUser user, CallReqVo paras);

    List<DialogueResVo> quyAgentDialogue(String callid, String agentid);

    List<DialogueResVo> quyIvrDialogue(String callid);

    CmdResVo expRecordList(JSysUser user, CallReqVo paras, HttpServletResponse response);
    /**
     * 进线组坐席监控明细
     *
     * @param dto 参数
     * @return 进线组坐席监控明细
     */
    List<InGroupDetailVO> inGroupDetail(InGroupDetailDTO dto);
    /**
     * 进线组坐席监控统计
     *
     * @return 进线组坐席监控统计
     */
    InGroupStatisticsVO inGroupStatistics(String workStartTime, String workEndTime);

    VisitGroupStatisticsVO visitGroupStatistics();
}
